package com.wzdigit.wms.hm.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.wzdigit.framework.orm.model.BasicDomain;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

/**
 * <p>
 * 库存交易凭证明细表，记录系统生成的入库单、出库凭证明细
 * </p>
 *
 * @author
 * @since 2021-01-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("WMS_TRSN_DTL")
@KeySequence(value = "WMS_TRSN_DTL_SEQ", clazz = Integer.class)
public class TrsnDtl extends BasicDomain {

    private static final long serialVersionUID = 1L;

    /**
     * 库存交易凭证明细ID
     */
    @TableId(value = "TRSN_DTL_ID", type = IdType.INPUT)
    private Integer trsnDtlId;

    /**
     * 库存交易凭证表头ID
     */
    @TableField("TRSN_HEADER_ID")
    private Integer trsnHeaderId;

    /**
     * 凭证号
     */
    @TableField("NOTE_NO")
    private String noteNo;

    /**
     * 凭证行号
     */
    @TableField("NOTE_LINE_NO")
    private String noteLineNo;

    /**
     * 1：入库，-1：出库
     */
    @TableField("INV_UPDATE_FLAG")
    private Integer invUpdateFlag;

    /**
     * 源单号
     */
    @TableField("FM_DOC")
    private String fmDoc;

    /**
     * 源单行号
     */
    @TableField("FM_DOC_LINE")
    private String fmDocLine;

    /**
     * 货品
     */
    @TableField("SKU_ID")
    private Integer skuId;

    /**
     * 数量
     */
    @TableField("QTY")
    private BigDecimal qty;

    /**
     * 收货单位
     */
    @TableField("UNIT")
    private String unit;

    /**
     * 库存性质(特殊采购性质)，K为寄售 ,E为销售订单,空白为标准转换为S
     */
    @TableField("INV_ATTR")
    private String invAttr;

    /**
     * 库存类型，空白为非限制，X为质检，S为冻结
     */
    @TableField("INV_TYPE")
    private String invType;

    /**
     * 品质状态：待检、合格、不合格
     */
    @TableField("QA_STATUS")
    private Integer qaStatus;

    /**
     * 批次属性1
     */
    @TableField("LOT_ATTR_1")
    private String lotAttr1;

    /**
     * 批次属性2
     */
    @TableField("LOT_ATTR_2")
    private String lotAttr2;

    /**
     * 批次属性3
     */
    @TableField("LOT_ATTR_3")
    private String lotAttr3;

    /**
     * 批次属性4
     */
    @TableField("LOT_ATTR_4")
    private String lotAttr4;

    /**
     * 批次属性5
     */
    @TableField("LOT_ATTR_5")
    private String lotAttr5;

    /**
     * 批次属性6
     */
    @TableField("LOT_ATTR_6")
    private String lotAttr6;

    /**
     * 批次属性7
     */
    @TableField("LOT_ATTR_7")
    private String lotAttr7;

    /**
     * 批次属性8
     */
    @TableField("LOT_ATTR_8")
    private String lotAttr8;

    /**
     * 批次属性9
     */
    @TableField("LOT_ATTR_9")
    private String lotAttr9;

    /**
     * 批次属性10
     */
    @TableField("LOT_ATTR_10")
    private String lotAttr10;

    /**
     * 批次属性11
     */
    @TableField("LOT_ATTR_11")
    private String lotAttr11;

    /**
     * 批次属性12
     */
    @TableField("LOT_ATTR_12")
    private String lotAttr12;

    /**
     * 用户自定义字段1
     */
    @TableField("UDF1")
    private String udf1;

    /**
     * 用户自定义字段2
     */
    @TableField("UDF2")
    private String udf2;

    /**
     * 用户自定义字段3
     */
    @TableField("UDF3")
    private String udf3;

    /**
     * 用户自定义字段4
     */
    @TableField("UDF4")
    private String udf4;

    /**
     * 用户自定义字段5
     */
    @TableField("UDF5")
    private String udf5;

    /**
     * 备注
     */
    @TableField("COMMENTS")
    private String comments;

    /**
     * 状态
     */
    @TableField("STATUS")
    private Integer status;
 

}
